In a typical system in which work is assigned to resources, such as a customer support center for example, work may be assigned based on resource availability and technical training of the resource. A resource is typically a human agent, a person with technical knowledge, etc. Communications, which may be in the form of a voice communication, a textual communication, a video communication and/or the like, may enter the system from customers or others seeking support from the center. These communications typically contain work items describing a customer problem. A resource may be assigned to the communication and/or work item based in part on the resource availability and a match between the resource technical training and communication or work item.